<?php 

/**
 * [注册管理控制器]
 */
class RegisterControl extends Control{

	/**
	 * [此方法是判断用户是否已经注册并登陆成功，注册并登陆成功就跳转到相应的会员中心页面，不用也无法再进入注册页面]
	 */
	public function __init(){
		// 判断是否有用户的session_id和session用户名
		if(isset($_SESSION['rid']) && isset($_SESSION['username'])){
			// 如果存在，就跳转到相应会员中心页面，跳转到企业会员中心还是个人会员中心，取决于rid的值
			go(U('Member/Index/index'));
		}
	}

	/**
	 * [默认显示注册页面]
	 */
	public function index(){
		// 加载模板
		$this->display();
	}

	/**
	 * [用户实际注册页面]
	 */
	public function register(){
		// 先判断是否有post提交
		if(IS_POST){
			$userModel = K('User');
			// 执行自动验证，自动完成 (注：必须执行create 或auto 模型方法，自动完成才会执行)
			// 在执行$UserModel->create()自动验证或自动完成时，会得出bool值，验证通过bool值为真，反之为假，所以这里取反，验证不通过，就返出错误信息 （验证失败时的错误信息，会记录到模型对象的error 属性中）
			if(!$userModel->create()) $this->error($userModel->error);

			// 通过模型来处理用户提交的注册数据，并添加到数据库中, 并得到添加数据库后的自增ID
			$uid = $userModel->add_user();

			// 写入session信息
			session('username',Q('post.username'));		//存入用户名
			session('uid',$uid);						//存入用户id
			session('rid',Q('post.rid',0,'intval'));   //存入用户的角色信息,默认值为0，强制转整
			session('usermail',Q('post.usermail'));		//存入用户邮箱
			session('loginip',Ip::getClientIp());		//存入用户登录ip地址
			session('logintime',time());				//存入登录时间戳

			// 注册成功
			$this->success('注册成功');
		}
		
		// 加载模板
		$this->display();
	}



}
 ?>